package comlile.string;

import java.util.Scanner;

/*
 * String的转换功能：
 * byte[] getBytes():把字符串转换为字节数组
 * char[] toCharArray():把字符串转换为字符数组
 * static String valueOf(char[] chs):把字符数组转成字符串
 * static String valueOf(int i):把int类型的数据转成字符串
 * 		把任意类型转换为字符串的方法。
 * String toLowerCase():把字符串转小写
 * String toUpperCase():把字符串转大写
 * String concat(String str):字符串的连接
 */
public class _05StringConversion {

	public static void main(String[] args) {
		// 定义一个字符串
		String s = "abcde";

		// byte[] getBytes():把字符串转换为字节数组
		byte[] bys = s.getBytes();
		System.out.println(bys);
		for (int x = 0; x < bys.length; x++) {
			System.out.println(bys[x]);
		}
		System.out.println("----------------");

		// char[] toCharArray():把字符串转换为字符数组
		char[] chs = s.toCharArray();
		System.out.println(chs);
		for (int x = 0; x < chs.length; x++) {
			System.out.println(chs[x]);
		}
		System.out.println("----------------");

		// static String valueOf(char[] chs):把字符数组转成字符串
		String s2 = String.valueOf(chs);
		System.out.println("s2:" + s2);
		System.out.println("----------------");

		// static String valueOf(int i):把int类型的数据转成字符串
		int number = 100;
		String s3 = number + "";
		String s4 = String.valueOf(number);
		System.out.println("s3:" + s3);
		System.out.println("s4:" + s4);
		System.out.println("----------------");

		// String toLowerCase():把字符串转小写
		// String toUpperCase():把字符串转大写
		System.out.println("toLowerCase():" + "HelloWorld".toLowerCase());
		System.out.println("toUpperCase():" + "HelloWorld".toUpperCase());
		System.out.println("----------------");

		// String concat(String str):字符串的连接
		String s5 = "hello";
		String s6 = "world";
		String s7 = s5.concat(s6);
		String s8 = s5 + s6;
		System.out.println("s7:" + s7);
		System.out.println("s8:" + s8);
		
		System.out.println("----------------");
		
		stringFormat();
	}

	/*
	 * 把一个字符串的首字母转成大写，其余为小写。(只考虑英文大小写字母字符) 举例：helloWorldAbCde 结果：Helloworldabcde
	 * 
	 * 分析： A:键盘录入一个字符串 B:截取首字母得到s1 C:截取除首字母以外的其他字符串得到s2 D:s1转大写+s2转小写
	 */
	static void stringFormat() {
		// 键盘录入一个字符串
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个字符串：");
		String s = sc.nextLine();

		// 截取首字母得到s1
		String s1 = s.substring(0, 1);
		// 截取除首字母以外的其他字符串得到s2
		String s2 = s.substring(1);
		// s1转大写+s2转小写
		String result = s1.toUpperCase().concat(s2.toLowerCase());
		System.out.println(result);

		// String result = s.substring(0, 1).toUpperCase()
		// .concat(s.substring(1).toLowerCase());
		// System.out.println(result);
	}

}
